<?php

declare(strict_types=1);
/**
 * 活动类控制器入口
 */

namespace App\Controller;

use App\Service\Activity\DragonService;
use Hyperf\HttpServer\Annotation\Middleware;
use App\Middleware\JTAuthMiddleware;
use App\Middleware\CorsMiddleware;
use App\Service\Activity\ChristmasService;
use App\Service\Activity\DailyActService;
use App\Service\Activity\DailyRewardGetService;
use App\Service\Activity\HostRewardInfoService;
use App\Service\Activity\HostRewardRankService;
use App\Service\Activity\InviteInfoService;
use App\Service\Activity\MyRewardService;
use App\Service\Activity\RegisterInfoService;
use App\Service\Activity\RewardRankService;
use App\Service\Activity\v1_3_0\DailyTaskInfoService;
use App\Service\Activity\v1_3_0\GetDiscountService;
use App\Service\Activity\v1_3_0\InviteInfoService as V1_3_0InviteInfoService;
use App\Service\Activity\v1_3_0\SigninPopService;
use App\Service\Activity\v1_3_0\SignInService;
use App\Service\Activity\WishTreeInfoService;
use App\Service\Activity\WishTreeMakeService;
use App\Service\Activity\WishTreeMyService;
use App\Service\Activity\WishTreeRankService;
use App\Service\Activity\WishTreeRulesService;
use Hyperf\HttpServer\Annotation\RequestMapping;
use Hyperf\HttpServer\Annotation\Controller;

/**
 * @Controller(prefix="act")
 */
class ActivityController extends AbstractController
{
    /**
     * 邀请有奖-页面信息
     * @RequestMapping(path="invite/info", methods="post")
     * @Middleware(JTAuthMiddleware::class)
     * @Middleware(CorsMiddleware::class)
     */
    public function invite_info(InviteInfoService $service)
    {
        return $service->response();
    }

    /**
     * 邀请有奖页面-奖励排行榜
     * @RequestMapping(path="reward/rank", methods="post")
     * @Middleware(JTAuthMiddleware::class)
     * @Middleware(CorsMiddleware::class)
     */
    public function reward_rank(RewardRankService $service)
    {
        return $service->response();
    }

    /**
     * 邀请有奖页面-我的奖励
     * @RequestMapping(path="reward/mylist", methods="post")
     * @Middleware(JTAuthMiddleware::class)
     * @Middleware(CorsMiddleware::class)
     */
    public function reward_mylist(MyRewardService $service)
    {
        return $service->response();
    }

    /**
     * 注册页面信息
     * @RequestMapping(path="register/info", methods="post")
     * @Middleware(CorsMiddleware::class)
     */
    public function register_info(RegisterInfoService $service)
    {
        return $service->response();
    }

    /**
     * 声优贤惠榜单
     * @RequestMapping(path="host_reward/rank", methods="post")
     * @Middleware(CorsMiddleware::class)
     */
    public function host_reward_rank(HostRewardRankService $service)
    {
        return $service->response();
    }

    /**
     * 声优贤惠信息
     * @RequestMapping(path="host_reward/info", methods="post")
     * @Middleware(CorsMiddleware::class)
     */
    public function host_reward_info(HostRewardInfoService $service)
    {
        return $service->response();
    }

    /**
     * 每日奖励任务
     * @RequestMapping(path="daily_task", methods="post")
     * @Middleware(JTAuthMiddleware::class)
     */
    public function daily_task(DailyActService $service)
    {
        return $service->response();
    }

    /**
     * 领取奖励任务
     * @RequestMapping(path="get_reward", methods="post")
     * @Middleware(JTAuthMiddleware::class)
     */
    public function get_reward(DailyRewardGetService $service)
    {
        return $service->response();
    }

    /**
     * 许愿树活动 - 页面信息
     * @RequestMapping(path="wishtree/info", methods="post")
     * @Middleware(JTAuthMiddleware::class)
     */
    public function wishtree_info(WishTreeInfoService $service)
    {
        return $service->response();
    }

    /**
     * 许愿树活动 - 许愿
     * @RequestMapping(path="wishtree/make", methods="post")
     * @Middleware(JTAuthMiddleware::class)
     */
    public function wishtree_make(WishTreeMakeService $service)
    {
        return $service->response();
    }

    /**
     * 许愿树活动 - 活动规则
     * @RequestMapping(path="wishtree/rules", methods="post")
     * @Middleware(JTAuthMiddleware::class)
     */
    public function wishtree_rules(WishTreeRulesService $service)
    {
        return $service->response();
    }

    /**
     * 许愿树活动 - 排行榜
     * @RequestMapping(path="wishtree/rank", methods="post")
     * @Middleware(JTAuthMiddleware::class)
     */
    public function wishtree_rank(WishTreeRankService $service)
    {
        return $service->response();
    }

    /**
     * 许愿树活动 - 我的许愿
     * @RequestMapping(path="wishtree/mylist", methods="post")
     * @Middleware(JTAuthMiddleware::class)
     */
    public function wishtree_my(WishTreeMyService $service)
    {
        return $service->response();
    }

    /**
     * 圣诞节
     * @RequestMapping(path="christmas", methods="post")
     * @Middleware(CorsMiddleware::class)
     */
    public function christmas(ChristmasService $service)
    {
        return $service->response();
    }

    /**
     * 签到弹窗信息
     * @RequestMapping(path="signin_pop", methods="post")
     * @Middleware(JTAuthMiddleware::class)
     */
    public function signin_pop(SigninPopService $service)
    {
        return $service->response();
    }

    /**
     * 签到
     * @RequestMapping(path="signin", methods="post")
     * @Middleware(JTAuthMiddleware::class)
     */
    public function signin(SignInService $service)
    {
        return $service->response();
    }

    /**
     * 每天红包
     * @RequestMapping(path="daily_task/info", methods="post")
     * @Middleware(JTAuthMiddleware::class)
     */
    public function daily_task_info(DailyTaskInfoService $service)
    {
        return $service->response();
    }

    /**
     * 获取充值折扣
     * @RequestMapping(path="v1_3_0/get_discount", methods="post")
     * @Middleware(JTAuthMiddleware::class)
     */
    public function get_discount(GetDiscountService $service)
    {
        return $service->response();
    }

    /**
     * 邀请信息
     * @RequestMapping(path="v1_3_0/invite_info", methods="post")
     * @Middleware(JTAuthMiddleware::class)
     */
    public function v1_3_0_invite_info(V1_3_0InviteInfoService $service)
    {
        return $service->response();
    }

    /**
     * 端午节活动
     * @RequestMapping(path="dragon/2023", methods="post")
     * @Middleware(CorsMiddleware::class)
     */
    public function dragon_2023(DragonService $service)
    {
        return $service->response();
    }
}
